Much of the Internet's use is conducted through the World Wide Web, hereinafter referred to as "WWW," or simply the "Web," in which linked pages of static content, composed of a variety of media, such as text, images, audio, and video, are described using hypertext markup language (HTML). While the WWW revolution has placed a wealth of information at the fingertips of cotuntless people, and while HTML is a very good way of describing static documents, HTML provides no mechanism for interacting with Web pages. At present, a Web browser uses the Hypertext Transport Protocol (HTTP) to request an HTML file from a Web server. HTTP is an Internet protocol designed for the rapid and efficient delivery of HTML documents. A Web browser is a client process (also called a "client") running on a local or client computer that enables a user to view HTML documents. An examples of a Web browser is the Internet Explorer, from Microsoft Corporation, of Redmond, Washington. A Web server is a server process (also called a "server") running on a remote or server computer that uses HTTP to serve up HTML docuinents and any associated files and scripts when requested by a client.
The Web server receives the request and sends the HTML page to the Web browser, which formats and displays the page. Although this model provides a client with ready access to nicely formatted pages of information, it provides only limited interaction between the client and the server. In this regard, HTML pages must be manually edited in order to change what a server sends to a client. Thus, much of the potential richness of the World Wide Web is not fully realized.
One of the biggest challenges to any Web server is to offer client's dynamic content, such as selected information retrieved from databases. A prior art approach to providing dynamic content in Web pages is through the use of the Common Gateway Interface (CGI). CGI is a common way for interfacing external applications with HTTP or Web servers in which a client, executing a CGI script embedded in an HTML page, sends a request to the Web server to execute a CGI program. The CGI script transfers environment variables comprising a query string and a path information parameter. The query string is a string of text to be searched for in the Web server's database file. The path information parameter is used to indicate the location of a file to be searched.
While CGI allows specifically requested information to be accessed from databases across the Internet, CGI has very limited capabilities. Queries performed by CGI programs amount to string matching in a data file, and the results returned to the Web browser are simply preformatted text or an HTML document listing the results. Information retrieved by CGI programs is not tabular in nature. Any tabular relationships that might have been present in the data file are lost because tabular relationships are not accommodated by CGI. Thus, CGI, while adding dynamic content to Web pages, falls short of providing the full potential of database technology through the Internet. The present invention is directed to overcoming the problem.